package online.heycm.rbac.param.user;

import lombok.Data;
import online.heycm.platform.web.common.annotation.EncryptField;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.util.Set;

/**
 * @author hey
 * @version 1.0
 * @date 2024/1/12 9:07
 */
@Data
public class UserAddReq implements Serializable {

    private static final long serialVersionUID = 3700912413809974069L;

    /**
     * 用户姓名
     */
    @NotBlank
    @EncryptField
    private String username;

    /**
     * 用户手机
     */
    @NotBlank
    private String phone;

    /**
     * 用户身份证
     */
    private String idCard;

    /**
     * 用户昵称
     */
    private String nickname;

    /**
     * 用户备注
     */
    private String remark;

    /**
     * 用户状态：0-禁用 1-正常
     */
    @NotNull
    @Max(1)
    @Min(0)
    private Integer sts;

    /**
     * 用户角色
     */
    @NotNull
    @Size(min = 1)
    private Set<Integer> roleIds;

    /**
     * 登录密码
     */
    @NotBlank
    private String authCredential;
}
